package com.school.dao;

import com.school.model.Permission;
import com.school.model.Role;
import com.school.model.Student;

import java.util.Collection;
import java.util.List;
import java.util.Set;

/**
 * 接口：规定功能函数，规范
 */
public interface RoleDao extends BaseDao<Role> {
    /**
     * 更具角色ids查询权限的ids
     * @param roleIds   ~
     * @return  ~
     */
    public Set<Integer> getPermissionIdsByRoleIds(List<Integer> roleIds);

    /**
     * 根据权限ids查询权限
     * @param permissionIds ~
     * @return  ~
     */
    public List<Permission> getPermissionsByIds(Collection<Integer> permissionIds);

    /**
     * 根据用户id删除角色列表
     * @param userId    ~
     * @return  ~
     */
    public int deleteRolesByUserId(Integer userId);

    /**
     * 更具用户id添加多个角色id
     * @param userId    ~
     * @param roleIds   ~
     * @return  ~
     */
    public int insertUserRolesByUserId(Integer userId,Set<Integer> roleIds);

}